home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Day Cry
/
Day Cry CD.bin
/
oh_towns
/
ein
/
sources
/
einlib.lzh
/
LIBSRC.LZH
/
EIN_CLP1.C
< prev
next >
Wrap
C/C++ Source or Header
|
1994-07-18
|
3KB
|
131 lines
/*<Header>==============================================================
*
* CLIP MANAGER / "EIN_CLP1.C"
*
* [ EIN(tm) project : âEâBâôâhâDâNâèâbâvæÇì∞òΓÅòè╓ÉöîQ ]
*
* COPYRIGHT Nam & OZZY 1994, All rights reserved.
*
*-----------------------------------------------------------------------
* V1.0L01â┐ 94.07.08/Nam âvâìâgâ^âCâv(OZZYé│é±é╠è╓Éöé≡ùÿùp)
*</Header>==============================================================*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <snd.h>
#include <winb.h>
#include <te.h>
#include <fntb.h>
#include <gui.h>
#include <egb.h>
#include <msdos.cf>
#include <loader.h>
#include <math.h>
#include <io.h>
#include <guidbg.h>
#define EIN_CLIP
#include "..\eintm.h"
#ifndef NOERR
#define NOERR (0)
#endif
#ifndef ERROR
#define ERROR (1)
#endif
/* âNâèâbâvâfü[â^ì\æóæ╠ */
typedef struct {
WINCLIP *clip;
WINCLIP *visible;
POINT svPos;
} EIN_CLIPWORK; /* âNâèâbâvâfü[â^ì\æóæ╠ */
/*<Func>================================================================
* int EIN_clipOpen( char *work )
*
* üyèT ùvüz âEâBâôâhâEâNâèâbâvæSëµû╩ë╗Åêù¥
*
* üyï@ ö\üz Ä└ìsè╓Éöôαé⌐éτâEâBâôâhâEÿgé≡æSëµû╩é╔é╖éΘ
*
* üyôⁿ ù═üz *work : âNâèâbâvæ▐ö≡ùpâÅü[âN
*
* üyÅo ù═üz
*
* üyè╓ÉöÆlüz == NOERR É│ÅφÅIù╣
*
* üyÆì ê╙üz ÅIù╣îπé═ EIN_clipClose() é≡î─é╤Åoé╡é─ë║é│éó
*
* üyÄgùpùßüz
* char clp[EINCLIPSIZE];
*
* EIN_clipOpen( cl );
* MG_mosDisp(2);
* WGB_putBlock( guiEgbPtr, 3, (char *)&put ) ;
* MG_mosDisp(3);
* EIN_clipClose( clp );
*
*-----------------------------------------------------------------------
* V11L10 1994.07.08/Nam (OZZYé│é±é╠è╓ÉöéµéΦ)
*</Func>==============================================================*/
int EIN_clipOpen( EIN_CLIPWORK *p )
{
WINCLIP *pwclp ;
WINCTRL *pctrl ;
POINT pos ;
/* é¿û±æ⌐é╠ErrorTrap */
if ( p == NULL ){
return ERROR;
}
/* ì└òWîné╠êΩÄ₧ò╧ìX */
pos.x = 0 ; pos.y = 0 ;
MG_PushOrigin( &pos, &p->svPos ) ;
/* ëµû╩æSæ╠é╠âTâCâYé≡ĵô╛ */
MMI_GetControl( &pctrl ) ;
pwclp = WIN_getClipMemory( &( pctrl->bound ), NULL ) ;
/* ò\Īÿgé≡É▌ÆΦé╖éΘ. */
WIN_pushVisible( WIN_copyClip( pwclp ), &p->visible ) ;
WIN_pushClip( pwclp, &p->clip ) ;
return NOERR ;
}
/*<Func>================================================================
* int EIN_clipClose( char *work )
*
* üyèT ùvüz âEâBâôâhâEâNâèâbâvæSëµû╩ë╗ë≡Å£Åêù¥
*
* üyï@ ö\üz Ä└ìsè╓Éöôαé⌐éτâEâBâôâhâEÿgé≡æSëµû╩ë≡Å£é╖éΘ
*
* üyôⁿ ù═üz *work : âNâèâbâvæ▐ö≡ùpâÅü[âN
*
* üyÅo ù═üz é╚é╡
*
* üyè╓ÉöÆlüz == NOERR É│ÅφÅIù╣
*
* üyÆì ê╙üz EIN_clipOpen() é╠îπé┼î─é╤Åoé╡é─ë║é│éó
*
* üyÄQ Å╞üz
*
*-----------------------------------------------------------------------
* V11L10 1994.07.08/Nam (OZZYé│é±é╠è╓ÉöéµéΦ)
*</Func>==============================================================*/
int EIN_clipClose( EIN_CLIPWORK *p )
{
/* é¿û±æ⌐é╠ErrorTrap */
if ( p == NULL ){
return ERROR;
}
/* ò\Īÿgé≡ò£ïAé╖éΘ. */
WIN_popClip( p->clip ) ;
WIN_popVisible( p->visible );
/* ì└òWîné╠ò£ïA */
MG_PopOrigin( &p->svPos );
return NOERR ;
}